import 'dart:io';

main() {
  print('程序开始，执行main函数');
  // print(requestData());
  requestData()
    .then((res) {
      print('请求数据成功：$res');
    })
    .catchError((error) {
      print('请求数据失败：$error');
    })
    .whenComplete(() {
      print('结束，不管成功失败，都关闭加载弹窗');
    });
  print('这是不能被阻塞的代码');
}

Future<String> requestData() {
  // 相当于鸿蒙的 return new Promise
  return new Future(() {
    sleep(Duration(seconds: 5)); // 阻塞线程5秒
    // return '后端返回的数据'; // 模拟成功
    throw '请求数据失败'; // 模拟失败
  });
}

